iT邦幫忙

2021 iThome 鐵人賽

DAY 25
0
AI & Data

資料三十-那些最基本的資料處理與分析技能系列 第 25

【Day25-評估】連韓組長也混淆的混淆矩陣?——學會正確解讀模型價值的常用指標:Recall, Precision, Specificity, F1-Score

  • 分享至 

  • xImage
  •  

在資料分析的領域,如果有訓練過模型的朋友一定會遇過這個時刻,訓練好一個模型之後要用什麼方式來評估這個模型的成效如何?如果你腦海中想到的除了正確率(Accuracy)以外還有其他指標的話,那恭喜你比較不容易掉入片面的觀點中,而如果不是,這篇文章希望能提供給你一點參考^ ^

模型評估指標

以影集《我的新創時代》為例

在這部影集中,身為VC的韓組長在劇中說過了這樣一段話


我評估的投資案超過千件,投資過三十幾家公司,其中四家新創公司沒得到後續投資,但沒投資卻成功的公司一家也沒沒有,我不想破壞這個記錄所以我絕對不會投資你們。——韓志平《我的新創時代》

當初在看到這邊的時候就覺得好像怪怪的,那我們就以這邊的韓組長說的當作實際數據來評估一下他的投資眼光吧XD

以下為本次假設

  • 韓組長一共看過1000家公司
  • 投資了35間公司
    • 4家後來沒成功
    • 31家後來有成功
  • 沒投資的965間公司都沒成功

混淆矩陣(Confusion Matrix)——

在評估模型效果的時候,最完整的一個方法就是把所有對錯的結果都列出來,然後分別以橫軸和縱軸代表預測/實際結果(或是倒過來,兩種都有人用)的數量

這邊和疫情的時候大家很常討論的偽陰、偽陽是一樣的概念,但因為2x2的組合很容易搞混(難怪叫混淆矩陣嗎w),因此這邊提供一個記憶方式

  • 先看Positive/Negative
    • 都表示預測出來的結果,因此Postive結尾的就一定是x陽
  • 再看True/False
    • True表示猜對,因此實際和結尾是一樣
    • False表示猜錯,例如偽陽的實際值是陰性

那這邊我們將前面假設的數值填入一下這個表格

正確率(Accuracy)——全部對多少

  • 公式
  • 代表意義:==全部結果中,有多少的預測對了==
  • 案例數據:因為有投資也有成功沒投資也沒成功這兩種情況都算是預測正確,因此一共預測正確的筆數在1000家公司中有996家
    • 韓組長正確率:99.6%

不平衡資料的正確率陷阱

以這邊的資料為例,我們發現有成功:沒成功的公司為31:969,兩種類型非常的不平衡,因此如果只看重正確率的話,只要有一個人面對所有的公司全都無腦選擇不投資,那他的正確率也會有96.9%,因此在面對不平衡資料的時候請記得慎重考慮正確率能代表的意義!

敏感度 (Sensitivity)、回想率 (recall)——把握住多少機會

  • 公式
  • 代表意義:==所有實際陽性類別中找出了多少==
    • 即所有有成功的公司,有多少家有投資
  • 案例數據:31家有成功的公司,31家都有投資!
    • 韓組長Recall:100%

如何提升Recall?

既然Recall表示的是我們把握了多少機會,那只要面對每次的機會都選擇投資的話那就可以儘量高的提升Recall了,不過在此同時我們False Postive的數量也會對應的提升

準確度 (Specificity)——避開多少雷

  • 公式:
  • 代表意義:==所有實際陰性類別中找出了多少==
  • 案例數據:969家失敗的公司,其中有965家都避開而沒有投資
    • 韓組長Specificity:99.6%

如何提高Specificity?

既然Specificity表示的是避開雷的機率,那只要面對每次的機會都選擇不投資的話那就可以儘量高的提升Specificity了,有沒有發現這邊和我們提升Recall的策略會是矛盾的?沒錯,因此有一好沒兩好,我們通常必須要根據實際的需求來適當調整我們的策略

精準率 (precision)——出手押中了有多少

  • 公式
  • 代表意義:==被預測成陽性類別的資料,有多少實際上是對的==
  • 案例數據:出手投資了35家公司,其中有31家都有成功
    • 韓組長Precision:88.6%

Precision應該才是在投資圈中最重要的指標

股神巴菲特提出過棒球理論,表示投資的時候如同在球場打球,但卻不會被三振出局,因此可以一直等到自己有把握的球再揮棒就好,這邊正是Precision要強調的概念!

而知名Podcaster股癌也說過,因為成功的回報是比失敗大的,因此基本上如果一個投資者他大概50%~60%的投資標的都有成功的話收益就會是正的。所以雖然這邊韓組長(or編劇)搞錯了Precision和Recall的意義,但高達9成的Precision還是非常厲害的啦

補充:F1-score——平衡Precision和Recall的指標

  • 公式
  • 代表意義:Precision和Recall的調和平均
    • 同時考慮兩者,只要一個值太低F1就會跟著很低
  • 在不特別考慮使用場景的時候,是最綜合的指標

案例解讀

劇中韓組長所提到他的記錄,其實就是Recall高達100%的記錄,而在混淆矩陣上的呈現就是False Negative都只有0間,不過這個時候讓我們先停下來思考一下他現在面對的男主角的公司的情況,我們知道這間公司不是成功就是失敗(雖然是廢話但還是要特地提一下

如果韓組長選擇不投資

這兩種情況出現在混淆矩陣的位置會是這個區塊

而如果男主角的公司最後有成功了,那他的記錄才會維持不了

如果韓組長選擇投資

這兩種情況出現在混淆矩陣的位置會是這個區塊

那不論男主角的公司最後有沒有成功,韓組長的記錄都可以繼續維持

結論

如果韓組長的目的是要「維持Recall高達100%的記錄」,那應該要把標準閥值降低,而儘量到處投資才對的啊XD

以上,就是今天以影集《我的新創時代》為例子來講解如何評估一個模型的預測結果的內容,感謝你的閱讀,有什麼問題或我說明不清楚的地方也歡迎提出來哦~


上一篇
【Day24-序列】時間序列型資料的基本處理——以0050股票價格為例:尋找峰值、移動平均、曲線擬合
下一篇
【Day26-報表】我的資料儀錶板動起來了——超方便的互動式報表工具Google Data Studio上手教學
系列文
資料三十-那些最基本的資料處理與分析技能30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
owo
iT邦新手 3 級 ‧ 2021-10-10 23:27:24

發完文抱怨一下IThome的Markdown竟然沒有支援Latex,害我所有打好的公式都要重新截圖成圖片貼上QAQ

我要留言

立即登入留言